/*
 * Copyright (C) 2021 ShangHai Quicktron Intelligent Technology Co.,Ltd
 * All Rights Reserved.
 * 本软件为上海快仓智能科技开发研制。未经本公司正式书面同意，其他任何个人、团体
 * 不得使用、复制、修改或发布本软件.
 * 版权所有 翻版必究
 */
package com.kc.gb.device.common.adapter.dto.wes.station.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.List;

/**
 * 工作站槽位
 *
 * @author kim.cheng
 * @since 2018 -12-12
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class StationSlotDTO extends BaseDTO {

    // @Valid
    private List<StationSlotBindingDTO> stationSlotBindings;

    @ApiModelProperty(value = "所属工作站ID", name = "stationId")
    // @NotNull
    private Long stationId;

    @ApiModelProperty(value = "所属工作站编码", name = "stationCode")
    private String stationCode;

    @ApiModelProperty(value = "分播墙编码", name = "slotCode")
    // @Length(max = 50)
    private String bucketCode;

    @ApiModelProperty(value = "槽位编码", name = "slotCode")
    // @NotBlank
    // @Length(max = 50)
    private String slotCode;

    @ApiModelProperty(value = "槽位简码", name = "slotShortCode")
    // @Length(max = 20)
    private String slotShortCode;

    @ApiModelProperty(value = "优先级", name = "priority")
    // @NotNull
    private Integer priority;

    @ApiModelProperty(value = "槽位容量", name = "capacity")
    //@NotNull
    private Integer capacity;


    @ApiModelProperty(value = "槽位类型", name = "slotType")
    // @NotBlank
    // @Length(max = 20)
    private String slotType;

    @ApiModelProperty(value = "容器号", name = "containerCode")
    // @Length(max = 50)
    private String containerCode;

    //	@ApiModelProperty(value = "分箱唯一标识", name = "packageUuid")
    //	@NotBlank
    //	@Length(max = 40)
    //	private String packageUuid;

    @ApiModelProperty(value = "删除标记", name = "deleteFlag")
    private Boolean deleteFlag;

	@ApiModelProperty(value = "虚拟类型", name = "virtualType")
//	@NotNull
	private String virtualType;

    @ApiModelProperty(value = "货架移动类型", name = "moveType")
    //@NotNull
    private String moveType;
	@ApiModelProperty(value = "槽位已满标记", name = "fullFlag")
	private Boolean fullFlag;
	
	@ApiModelProperty(value = "PTL编号", name = "slotNumber")
	private Integer slotNumber;

    @ApiModelProperty(value = "槽位背面PTL编号", name = "backPtlCode")
    private Integer backPtlCode;
    /**
     * 货架面
     */
    private Integer bucketFace;

    /**
     * 货架层
     */
    private Integer bucketLayer;

    private String state;
}
